/*
 * @Author: hx 2542123711@QQ.com
 * @Date: 2024-12-27 18:57:03
 * @LastEditors: hx 2542123711@QQ.com
 * @LastEditTime: 2024-12-27 18:58:16
 * @FilePath: /class_process-control/proc/myproc.c
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include<string.h>
#include<errno.h>

#define N 5
void runchild()
{
    int cnt = 10;
    while(cnt--)
    {
        printf("I am a child:%d, pid:%d, ppid:%d\n", cnt, getpid(), getppid());
        sleep(1);
    }
}

int main()
{
    int i = 0;
    for(; i< N; i++)
    {
        pid_t id = fork();
        if(id ==0)
        {
            runchild();
            exit(0);
        }
    }
    
        printf("pid :%d before!\n",  getpid());
        fork();
        printf("pid :%d after!\n", getpid());
        sleep(1000);

        return 0;

}

//int main()
//{
//    printf("hello, exit");
//    sleep(1);
//    _exit(11);
//    return 0;
//}

//int main()
//{
//    printf("hello exit");
//    sleep(1);
//    exit(9);
//}

//int main()
//{
//    int a = 10;
//    //a/=0;
//    //printf("erro:%d, %s", errno, strerror(errno));
//    int* p=(int*) malloc(1000 * 1000 * 1000*8);
//    if(p == NULL)
//    {
//        printf("malloc error:%d, %s\n", errno, strerror(errno));
//    }
//    return errno;
//
//}

//void show()
//{
//    printf("hello meimei\n");
//    printf("hello meimei\n");
//    printf("hello meimei\n");
//    return;
//    printf("hello meimei\n");
//    printf("hello meimei\n");
//    exit(2);
//}
//
//int main()
//{
//    show();
//    printf("hello xinshen, pid%d\n",getpid());
//    return 20;
//}
